The Radio Data System (RDS) is a communications protocol standard for including small amounts of digital information in conventional FM radio broadcasts. RDS standardizes several types of information that is transmitted, including time, station identification, and program information. The Radio Broadcast Data System (RBDS) is the official name used for the U.S. version of RDS. The two standards differ only slightly. Both carry data at about 1187 bits per second on a 57-kHz subcarrier, so there are exactly 48 cycles of subcarrier during every data bit. The Radio Data System (RDS) is an information broadcast that was introduced for use in FM radio stations which transmit stereo-multiplex signals in the VHF frequency band. The Radio Data System provides radio receivers with broadcast data about the transmitting radio station and the programs broadcast by the radio station. The radio receivers typically reproduce this data on an optical display such as a liquid-crystal display screen.
The RDS broadcast data may include program identification (PI) which indicates the program being received or the name of the station/transmitter tuned in; program type identification (PTY) which indicates the type of program such as music, news, etc.; traffic announcements (TA); and/or radio text (RT) which contains program-accompanying information such as the music title, performer, program changes, and the like. The Radio Data System is used principally in car radios. For example, when the reception of the transmitter currently tuned in deteriorates, RDS-capable car radios automatically switch over to a better, or best receivable, transmitter broadcasting the same program. The information required to do this includes the noted program identification (PI) information along with a list of alternative frequencies (AF) which are being broadcast by RDS-capable radio stations. The Radio Data System also offers advantages to the listener of home FM receivers as well. For example, the home listener can benefit from the noted program type identification (PTY) and radio text (RT) information.
The RDS specification EN 50067:1998 defines a number of RDS group types that are generally reserved for a particular application. The type 0A group—basic tuning and switching information—is a special case, designed to carry the fundamental components of RDS all together in a single group that will be transmitted frequently to convey many pieces of information to an RDS receiver to enable it to perform a considerable number of tuning functions. These fundamental components, known as features, allow a degree of automatic tuning in an RDS receiver and allow it to present tuning-related information to the user. The type 0A group contains all of the following RDS features: Alternative Frequency (AF), Decoder Information (DI), Music Speech (MS), PI, Program Type (PTY), Traffic Announcement (TA), and Traffic program (TP). The type 0B group contains the same features except the AF feature. The implementation of the type 0 groups in any RDS transmission is essential, and not optional—unlike many of the other possible groups in RDS—because it carries vital information required for automated tuning of an RDS receiver. From these basic RDS features serving as tuning aids, it is useful to consider AF, PI, PS, and TP. They can be seen in various locations within the type 0A group. Furthermore, PI and TP can be found in all other groups to provide immediate information to an RDS receiver from every single group decoded. The type 0B group has a very similar structure, but there is a simple difference in block 3. In block 3, the AF feature is not used, so it is replaced by a second PI code. This group is normally used by single-service RDS transmissions, where there is no need for an AF list because there are, indeed, no alternates.
The following information fields are normally contained in the RDS data:
AF (alternative frequencies): This allows a receiver to re-tune to a different frequency providing the same station when the first signal becomes too weak (e.g., when moving out of range). This is often utilized in car stereo systems.
CT (clock time): Can synchronize a clock in the receiver or the main clock in a car. Due to transmission vagaries, CT can only be accurate to within 100 ms of UTC.
EON (enhanced other networks): Allows the receiver to monitor other networks or stations for traffic programs, and automatically temporarily tune into that station.
PI (program identification): This is the unique code that identifies the station. Every station receives a specific code with a country prefix. In the US, PI is determined by applying a formula to the station's call sign.
The PI code consists of 16 bits and is usually referred to by four hexadecimal characters, or nibbles. The PI code uniquely identifies a program service, within any geographical area, where broadcasts sharing the same PI code are guaranteed to be carrying identical program audio. Although there are many designs possible for an RDS receiver, evaluation of the PI code is fundamental to operation. In any receiver with preset memories, it is useful for the PI code of the broadcast to be stored in non-volatile memory when a service is assigned to a memory location. If no signal with the correct PI code is available, on the last tuned frequency or AFs, when a preset is chosen, the receiver may scan the FM band, stop on each receivable RDS service, and evaluate the PI code.
PS (program service): The Program Service Name contains maximally 8 alphanumeric characters. It can be used to inform the user about the station ID. The PS may be displayed by an RDS enabled tuner. As an addition to the static PS it is possible to use a dynamic PS (scrolling PS). Scrolling PS means that texts such as song title and artist or longer station names may also be displayed on non-radio text enabled receivers. The Program Service Name is transmitted in the groups 0A and 0B. According to the RDS standard, the PS has to be a static display and must not contain other text than an 8 digit name.
A total of four type 0A groups are required to transmit the entire PS name and therefore four type 0A groups will be required per second. The repetition rate of the type 0A group may be reduced if more capacity is needed for other applications. A minimum of two type 0A groups per second may be used to ensure correct functioning of PS and AF features. However, with EON receivers, search tuning is affected by the repetition rate of type 0 groups (TP/TA). It is to be understood that in this case, transmission of the complete PS will take 2 seconds. However, under typical reception conditions the introduction of errors may cause the receiver to take 4 seconds or more to acquire the PS name for display.
PTY (program type): This coding of up to 31 pre-defined program types (e.g., in Europe: PTY1 News, PTY6 Drama, PTY11 Rock music) allows users to find similar programming by genre. A tuner can use the PTY to receive specific program types only. Additionally the code can be used for station searching. The PTY code is transmitted in every RDS group. A tuner can use the PTY to receive specific program types only. Additionally the code can be used for station searching. The PTY code is transmitted in every RDS group.
The groups consist of four blocks, each being 26 bits long. These groups thus consist of 104 bits. One block consists of a 16-bit long information word and a 10-bit CRC check word to which is added an offset word that creates a synchronization mechanism. The RDS coding is structured so that the messages repeated most frequently (and which need a short acquisition time) normally occupy the same fixed positions within a group. This allows decoding without reference to any block outside that contain the information. In this example, the first block of each group always contains the PI code, whereas the PTY code and the TP flag occupy fixed positions in block 2 of every group. The group type code is specified by a 4-bit code that defines the group type (from 0 to 15). This code is sent in the first four bits of the second block of every group. In addition, the fifth bit of this block defines the “version” (A or B) of the group type. In version A groups, the PI code is inserted in block 1 only. In version B, the PI code is inserted in blocks 1 and 3.
REG (regional): This is mainly used in countries where national broadcasters run region-specific programs. This functionality allows the user to choose the set to their current region or let the radio tune into other region-specific programs as they move into the other region.
RT (radio text): This function allows a radio station to transmit a 64-character free-form text that can be either static (such as station slogans) or in synchronization with the program (such as the title and artist of the currently playing song).
TA, TP (traffic announcement, traffic program): The receiver can often be set to pay special attention to this flag and, for example, stop the tape/pause the CD or retune to receive a traffic bulletin. The TP flag is used to allow the user to find only those stations that regularly broadcast traffic bulletins whereas the TA flag is used to signal an actual traffic bulletin in progress, with radio units perhaps performing other actions such as stopping a cassette tape (so the radio can be heard) or raising the volume during the traffic bulletin.
TMC (traffic message channel): Digitally encoded traffic information. Not all RDS equipment supports this, but it is often available for automotive navigation systems. In many countries only encrypted traffic data is broadcast, and so an appropriate decoder, possibly related to a subscription service, is required to use the traffic data.
A station list may include the PS name (visible to the user) and some hidden information. To obtain a complete PS name a lot of RDS groups may be received because the single elements (two patterns) are transmitted sequentially in RDS group 0 every second (as recommended by the RDS specification). Therefore, a minimum time to receive a PS name may be 4 seconds (if good reception is assumed). In a single FM tuner it is difficult to get the PS name for another station than the foreground station (the station that is actually listened to by the user), because the system has to be muted too long, which severely degrades the listening comfort for the user.